package org.gingresosapi.controller;

import org.gingresosapi.beans.Bicicletas;
import java.sql.Date; 
import java.io.Serializable;
import java.util.List;
import java.util.ArrayList;
import java.util.*;
import java.util.HashMap;
import java.util.Map;
import org.gingresosapi.persistencia.BicicletasPersistencia;
import org.gingresosapi.generales.Mensajeria;


/**
*
*  @author
*/

public class BicicletasController implements Serializable {
private static final long serialVersionUID = 1L;
private boolean withRelation= true;
public static Exception excepcion;



private List<Bicicletas> bicicletaslist;

private Bicicletas selectedbicicletas;



public boolean isWithRelation() {
    return withRelation;
}
public  void setWithRelation(boolean withRelation) {
    this.withRelation = withRelation;
}
public BicicletasController(){
}

public Bicicletas getSelectedBicicletas() {
 return selectedbicicletas;
}

 public void setSelectedBicicletas(Bicicletas selectedbicicletas) {
 this.selectedbicicletas = selectedbicicletas;
}


public List<Bicicletas> getBicicletaslist() {
return bicicletaslist;
}

 public void setBicicletaslist(List<Bicicletas> bicicletaslist) {
this.bicicletaslist = bicicletaslist;
}
/*
*  getMensaje()
*   devuelve el mensaje encontrado...
*/
public String getMensaje() {
   String lexcepcion = excepcion.toString();
   if (lexcepcion.indexOf(":") != -1) {
       lexcepcion = lexcepcion.substring(lexcepcion.indexOf(":") + 1);
   }
  return lexcepcion;
}


/**
*
* insert()
*/

public boolean insert (Bicicletas bicicletas) {
try{
java.util.ResourceBundle bundle = java.util.ResourceBundle.getBundle("org/gingresosapi/properties/mensajes");
   if (validate(bicicletas)) {
     if (findByPrimaryKey(bicicletas)==null) {
         if (!BicicletasPersistencia.insert(bicicletas)) {
                 excepcion = BicicletasPersistencia.excepcion;
          }
          else{
             return true;
           }
       }else{
               excepcion=new Exception(bundle.getString("msg.recordexists"));
            return false;
       }
    }
  }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"insert()");
  }
  return false;
}


/**
*
* update()
*/

public boolean update (Bicicletas bicicletas) {
try{
java.util.ResourceBundle bundle = java.util.ResourceBundle.getBundle("org/gingresosapi/properties/mensajes");
   if (validate(bicicletas)) {
 if (BicicletasPersistencia.exists(bicicletas)) {
     if (!BicicletasPersistencia.update(bicicletas)) {
                excepcion = BicicletasPersistencia.excepcion;
     }
     else{
            return true;
     }
   }else{
               excepcion=new Exception(bundle.getString("msg.nofoundprimarykey"));
            return false;
     }
  }
  }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"update()");
  }
  return false;
}


/**
*
* update(String sqlupdate)
*/

public boolean update(String sqlupdate) {
try{
     if (!BicicletasPersistencia.update(sqlupdate)) {
                excepcion = BicicletasPersistencia.excepcion;
     }
     else{
            return true;
     }
  }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"update()");
  }
  return false;
}


/**
*
* updatePrimaryKey()
*/

public boolean updatePrimaryKey (Bicicletas bicicletas_old , Bicicletas bicicletas) {
try{
java.util.ResourceBundle bundle = java.util.ResourceBundle.getBundle("org/gingresosapi/properties/mensajes");
   if (validate(bicicletas_old)) {
 if (BicicletasPersistencia.exists(bicicletas_old)) {
     if (!BicicletasPersistencia.updatePrimaryKey(bicicletas_old,bicicletas)) {
                excepcion = BicicletasPersistencia.excepcion;
     }
     else{
            return true;
     }
   }else{
               excepcion=new Exception(bundle.getString("msg.nofoundprimarykey"));
            return false;
     }
  }
  }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"updatePrimaryKey()");
  }
  return false;
}


/**
*
* delete()
*/

public boolean delete (Bicicletas bicicletas) {
try{
java.util.ResourceBundle bundle = java.util.ResourceBundle.getBundle("org/gingresosapi/properties/mensajes");
 if (findByPrimaryKey(bicicletas)!=null) {
     if (!BicicletasPersistencia.delete(bicicletas)) {
                excepcion = BicicletasPersistencia.excepcion;
     }else{
            return true;
           }
   }else{
            excepcion=new Exception(bundle.getString("msg.nofoundprimarykey"));
            return false;
     }
  }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"delete()");
  }
  return false;
}


/**
*
* delete(String sqldelete)
*/

public boolean delete(String sqldelete) {
try{
     if (!BicicletasPersistencia.delete(sqldelete)) {
                excepcion = BicicletasPersistencia.excepcion;
     }else{
            return true;
           }
  }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"delete()");
  }
  return false;
}


/**
*
* deleteAll()
*/

public boolean deleteAll() {
try{
     if (!BicicletasPersistencia.deleteAll()) {
                excepcion = BicicletasPersistencia.excepcion;
     }
     else{
            return true;
     }
  }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"deleteAll()");
  }
  return false;
}


/**
*
* exists()
*/



public boolean exists(Bicicletas bicicletas) {
try{
   return BicicletasPersistencia.exists(bicicletas);
  }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"Exists()");
  }
 return false;
}


/**
*
* findPrimaryKey()
*/



public Bicicletas findByPrimaryKey(Bicicletas bicicletas) {
try{
    this.selectedbicicletas = BicicletasPersistencia.findByPrimaryKey(bicicletas);
    return selectedbicicletas;
  }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByPrimaryKey()");
  }
 return null;
}


/**
*
* findByIdbicicleta()
*/

public boolean findByIdbicicleta(Bicicletas bicicletas) {
  try{
     if(bicicletaslist != null){
        bicicletaslist.removeAll(bicicletaslist);
     }
     bicicletaslist = BicicletasPersistencia.findByIdbicicleta(bicicletas,withRelation) ;
     if (bicicletaslist== null) {
                excepcion = BicicletasPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByIdbicicleta()");
  }
  return false;
  }


/**
*
* findByPlaca()
*/

public boolean findByPlaca(Bicicletas bicicletas) {
  try{
     if(bicicletaslist != null){
        bicicletaslist.removeAll(bicicletaslist);
     }
     bicicletaslist = BicicletasPersistencia.findByPlaca(bicicletas,withRelation) ;
     if (bicicletaslist== null) {
                excepcion = BicicletasPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByPlaca()");
  }
  return false;
  }


/**
*
* findByMarca()
*/

public boolean findByMarca(Bicicletas bicicletas) {
  try{
     if(bicicletaslist != null){
        bicicletaslist.removeAll(bicicletaslist);
     }
     bicicletaslist = BicicletasPersistencia.findByMarca(bicicletas,withRelation) ;
     if (bicicletaslist== null) {
                excepcion = BicicletasPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByMarca()");
  }
  return false;
  }


/**
*
* findByModelo()
*/

public boolean findByModelo(Bicicletas bicicletas) {
  try{
     if(bicicletaslist != null){
        bicicletaslist.removeAll(bicicletaslist);
     }
     bicicletaslist = BicicletasPersistencia.findByModelo(bicicletas,withRelation) ;
     if (bicicletaslist== null) {
                excepcion = BicicletasPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByModelo()");
  }
  return false;
  }


/**
*
* findByChasis()
*/

public boolean findByChasis(Bicicletas bicicletas) {
  try{
     if(bicicletaslist != null){
        bicicletaslist.removeAll(bicicletaslist);
     }
     bicicletaslist = BicicletasPersistencia.findByChasis(bicicletas,withRelation) ;
     if (bicicletaslist== null) {
                excepcion = BicicletasPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByChasis()");
  }
  return false;
  }


/**
*
* findByColor()
*/

public boolean findByColor(Bicicletas bicicletas) {
  try{
     if(bicicletaslist != null){
        bicicletaslist.removeAll(bicicletaslist);
     }
     bicicletaslist = BicicletasPersistencia.findByColor(bicicletas,withRelation) ;
     if (bicicletaslist== null) {
                excepcion = BicicletasPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByColor()");
  }
  return false;
  }


/**
*
* findById()
*/

public boolean findById(Bicicletas bicicletas) {
  try{
     if(bicicletaslist != null){
        bicicletaslist.removeAll(bicicletaslist);
     }
     bicicletaslist = BicicletasPersistencia.findById(bicicletas,withRelation) ;
     if (bicicletaslist== null) {
                excepcion = BicicletasPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findById()");
  }
  return false;
  }


/**
*
* findByTipoid()
*/

public boolean findByTipoid(Bicicletas bicicletas) {
  try{
     if(bicicletaslist != null){
        bicicletaslist.removeAll(bicicletaslist);
     }
     bicicletaslist = BicicletasPersistencia.findByTipoid(bicicletas,withRelation) ;
     if (bicicletaslist== null) {
                excepcion = BicicletasPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByTipoid()");
  }
  return false;
  }


/**
*
* findByActivo()
*/

public boolean findByActivo(Bicicletas bicicletas) {
  try{
     if(bicicletaslist != null){
        bicicletaslist.removeAll(bicicletaslist);
     }
     bicicletaslist = BicicletasPersistencia.findByActivo(bicicletas,withRelation) ;
     if (bicicletaslist== null) {
                excepcion = BicicletasPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByActivo()");
  }
  return false;
  }


/**
*
* findByIdmunicipio()
*/

public boolean findByIdmunicipio(Bicicletas bicicletas) {
  try{
     if(bicicletaslist != null){
        bicicletaslist.removeAll(bicicletaslist);
     }
     bicicletaslist = BicicletasPersistencia.findByIdmunicipio(bicicletas,withRelation) ;
     if (bicicletaslist== null) {
                excepcion = BicicletasPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByIdmunicipio()");
  }
  return false;
  }


/**
*
* findByFecha()
*/

public boolean findByFecha(Bicicletas bicicletas) {
  try{
     if(bicicletaslist != null){
        bicicletaslist.removeAll(bicicletaslist);
     }
     bicicletaslist = BicicletasPersistencia.findByFecha(bicicletas,withRelation) ;
     if (bicicletaslist== null) {
                excepcion = BicicletasPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByFecha()");
  }
  return false;
  }


/**
*
* findByUsername()
*/

public boolean findByUsername(Bicicletas bicicletas) {
  try{
     if(bicicletaslist != null){
        bicicletaslist.removeAll(bicicletaslist);
     }
     bicicletaslist = BicicletasPersistencia.findByUsername(bicicletas,withRelation) ;
     if (bicicletaslist== null) {
                excepcion = BicicletasPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByUsername()");
  }
  return false;
  }


/**
*
* locateByParameters()
*/

public boolean locateByParameters(Map parametros) {
  try{
     if(bicicletaslist != null){
        bicicletaslist.removeAll(bicicletaslist);
     }
     bicicletaslist = BicicletasPersistencia.locateByParameters(parametros,withRelation);
     if (bicicletaslist== null) {
                excepcion = BicicletasPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"locateByParameters()");
  }
  return false;
}


/**
*
* Func(String funcion, String campo)
*/

public Double func(String funcion, String campo) {
  try{
     return BicicletasPersistencia.func(funcion,campo);
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"func()");
  }
  return 0.0;
}


/**
*
* Double func(String funcion, String campo, String where)
*/

public Double func(String funcion, String campo,String where) {
  try{
     return BicicletasPersistencia.func(funcion,campo,where);
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"Func()");
  }
  return 0.0;
}


/**
*
* count()
*/

public Integer count() {
  try{
     int x =BicicletasPersistencia.count();
    return x;
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"count()");
  }
 return 0;
}


/**
*
* count(String sql)
*/

public Integer count(String sqlquery) {
  try{
     int x =BicicletasPersistencia.count(sqlquery);
    return x;
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"count()");
  }
 return 0;
}


/**
*
* query()
*/

public boolean query(String query) {
  try{
     if(bicicletaslist != null){
        bicicletaslist.removeAll(bicicletaslist);
     }
     bicicletaslist = BicicletasPersistencia.query(query,withRelation);
     if (bicicletaslist== null) {
                excepcion = BicicletasPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"query()");
  }
  return false;
}


/**
*
* selectAll()
*/



public boolean selectAll() {
  try{
     if(bicicletaslist != null){
        bicicletaslist.removeAll(bicicletaslist);
     }
     Map<String, String> parametros = new HashMap<String, String>();
     bicicletaslist = BicicletasPersistencia.getListRecords(parametros,withRelation);
     if (bicicletaslist== null) {
                excepcion = BicicletasPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"SelectAll()");
  }
            return false;
}


public boolean validate(Bicicletas bicicletas) {
 try{
java.util.ResourceBundle bundle = java.util.ResourceBundle.getBundle("org/gingresosapi/properties/mensajes");

if (bicicletas.getIdbicicleta() == null || bicicletas.getIdbicicleta().equals("")){
   excepcion=new Exception(bundle.getString("idbicicleta")  + "  " + bundle.getString("msg.nonulo"));
  return false;
}
if (bicicletas.getId() == null || bicicletas.getId().equals("")){
   excepcion=new Exception(bundle.getString("id")  + "  " + bundle.getString("msg.nonulo"));
  return false;
}
if (bicicletas.getTipoid() == null || bicicletas.getTipoid().equals("")){
   excepcion=new Exception(bundle.getString("tipoid")  + "  " + bundle.getString("msg.nonulo"));
  return false;
}
if (bicicletas.getActivo() == null || bicicletas.getActivo().equals("")){
   excepcion=new Exception(bundle.getString("activo")  + "  " + bundle.getString("msg.nonulo"));
  return false;
}
if (bicicletas.getIdmunicipio() == null || bicicletas.getIdmunicipio().equals("")){
   excepcion=new Exception(bundle.getString("idmunicipio")  + "  " + bundle.getString("msg.nonulo"));
  return false;
}
if (bicicletas.getFecha() == null || bicicletas.getFecha().equals("")){
   excepcion=new Exception(bundle.getString("fecha")  + "  " + bundle.getString("msg.nonulo"));
  return false;
}
if (bicicletas.getUsername() == null || bicicletas.getUsername().equals("")){
   excepcion=new Exception(bundle.getString("username")  + "  " + bundle.getString("msg.nonulo"));
  return false;
}
  return true;
 }catch(Exception ex){
   Mensajeria.MensajeError(ex, "validate()");
  return false;

  }
}


}
